#read in model utilities
function Readin_utilities(dir::String)
    temp = CSV.read("$dir\\utilities\\educ_costs.csv", DataFrame; skipto=1)
    educ_costs = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\grad_probs.csv", DataFrame; skipto=1)
    grad_probs = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\aid_schedule_spline.csv", DataFrame; skipto=1)
    grants = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\grants_merit.csv", DataFrame; skipto=1)
    grants_merit = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\parent_income_ability_dist.csv", DataFrame; skipto=1)
    parent_dist_inc_abil = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\parent_income_house_dist.csv", DataFrame; skipto=1)
    parent_dist_inc_wealth = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\rec_emp_shocks.csv", DataFrame; skipto=1)
    rec_emp_shocks = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\rec_layoff_probs.csv", DataFrame; skipto=1)
    rec_layoff_probs = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\debt_options.csv", DataFrame; skipto=1)
    d_opts = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\utilities\\rec_home_shocks.csv", DataFrame; skipto=1)
    rec_home_shocks = Array{Float64,2}(temp)

    utilities = [educ_costs, grad_probs, grants, grants_merit, parent_dist_inc_abil, parent_dist_inc_wealth, rec_emp_shocks, rec_layoff_probs, d_opts, rec_home_shocks]
    utilities
end

#read in targeted moments
function Readin_moments(dir::String)
    temp = CSV.read("$dir\\moments\\additional_moments.csv", DataFrame; skipto=1)
    additional_moments = Array{Float64,2}(temp)
    
    temp = CSV.read("$dir\\moments\\age_profiles_emp.csv", DataFrame; skipto=1)
    age_prof_emp = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\moments\\age_profiles_income.csv", DataFrame; skipto=1)
    age_prof_inc = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\moments\\attendance_ability.csv", DataFrame; skipto=1)
    att_abil = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\moments\\attendance_all.csv", DataFrame; skipto=1)
    att_all = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\moments\\attendance_house.csv", DataFrame; skipto=1)
    att_house = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\moments\\attendance_house_ability.csv", DataFrame; skipto=1)
    att_house_abil = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\moments\\attendance_inc.csv", DataFrame; skipto=1)
    att_inc = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\moments\\attendance_inc_ability.csv", DataFrame; skipto=1)
    att_inc_abil = Array{Float64,2}(temp)

    temp = CSV.read("$dir\\moments\\nlsy_wage_ratios.csv", DataFrame; skipto=1)
    w_ratio_nlsy = Array{Float64,2}(temp)

    moments = [additional_moments, age_prof_emp, age_prof_inc, att_abil, att_all, att_house, att_house_abil, att_inc, att_inc_abil, w_ratio_nlsy]
    moments
end
